El programa que
hemos desarrollado, es una sencilla aplicación de consola,
que lo que hace es pedir la ecuación derivada, sus
respectivos valores y
hacer las operaciones
necesarias.
Sintaxis utilizada
Feval
Evalúa la función
Disp
Sirve para escribir texto de
salida o vectores (y
matrices) sin
mostrar su nombre.
Clear all, clc
Limpia la ventana de comandos
Syms
Declara las variables
Input
Se utiliza para que el programa pida valores de variables
mientras se ejecuta.
Aplicaciones
Resolver la siguiente EDO de primer orden por los
metodos de Euler y Euler modificado.
y`=20y+7*(exp.(0.5*x))
Código fuente
METODO DE EULER
clear all
disp('METODO DE EULER')
clc
syms x
syms y
f=inline(input('ingrese la derivada:','s'));
x=input('ingrese el valor de
x:');
y=input('ingrese el valor de y:');
h=input('ingrese el valor de h:');
n=input('ingrese numero de iteraciones:');
clc
disp('x(n) y(n) y´(n) hy´(n)');
for i=1:n
y1=feval(f,x,y);
hy1=h*y1;
fprintf('n%0.1f %0.4f %0.4f %0.4f
',x,y,y1,hy1);
y=y+hy1;
x=x+h;
x=0:1/20:4; plot(x, hy1,x, y1); grid on;
end
METODO DE EULER MODIFICADO
clear all
disp('METODO DE EULER MODIFICADO')
clc
syms x
syms y
f=inline(input('ingrese la derivada:','s'));
x=input('ingrese el valor de x:');
y=input('ingrese el valor de y:');
h=input('ingrese el valor de h:');
n=input('ingrese numero de iteraciones:');
clc
disp('x(n) y´(n) hy´(n) y(n+1),p
hy´(n+1),p y(n+1),c');
for i=1:n
s=h+x;
y1=feval(f,x,y);
hy1=h*y1;
y2=y+hy1;
y3=feval(f,s,y2);
hy2=y3*h;
yn=y+((hy1+hy2)/2);
fprintf('n%0.1f %0.4f %0.4f %0.4f %0.4f
%0.4f',x,y,hy1,y2,hy2,yn);
y=yn;
x=x+h;
x=0:1/20:4; plot(x, hy1,x, y1); grid on;
end
Conclusión
Podemos afirmar, que los programas
aquí expuestos resuelven EDO, de primer orden; y
probablemente podemos destacar los errores que existen por c/u,
de los métodos.
Se dice que los errores del método de
Euler, radica en un intervalo proporcional a h2, mientras que su
error global es proporcional a h; este método
podría ser inestable si la EDO, tiene una constante de
tiempo con
signo negativo, a menos que se utilice una h pequeña, en
cambio en el
método modificado si la EDO, no es lineal, se requiere de
un método iterativo para cada intervalo. Su error en un
intervalo es proporcional a h3, mientras que su error global lo
es a h2. En fin podemos afirmar que ambos métodos poseen
una desventaja, que consiste en que los órdenes de
precisión son bajos. Esta desventaja tiene dos facetas,
para mantener una alta precisión se necesita una h
pequeña, lo que aumenta el tiempo de cálculo y
provoca errores de redondeo.
Bibliografía
Shoichiro Nakamura, "Metodos
numericos aplicados con software",1992.
Creese, T.M. y R.M. Maralick,Ecuaciones
diferenciales para ingenieros, Mc Graw hill,1978.
Constantin, A., Aplicacones de metodos numericos,Mac
Graw hill, 1987.
Enviado por:
Paula Fernigrini
Autor:
José Thomas Aguirre Valle
Federico Matus
Daniel Gutiérrez
Rafael Torres
Trabajo final de Calculo II
Docente: Alberto Silva
Julio 03 de 2009
Managua, Nicaragua 2009
Página anterior | Volver al principio del trabajo | Página siguiente |